查看原文
其他

Ihmehimmeli 项目:脉冲神经网络中的时序编码

Google 谷歌开发者 2021-07-27

文 / Iulia-Maria Comșa 与 Krzysztof Potempa, 研究工程师, Google Research

神经科学领域的发现持续地启发和帮助我们建立更有效率的人工神经网络,以生物有机体的方式处理信息。最近,这些网络在棋盘和视频游戏乃至视频细粒度理解等领域均取得巨大的成功。然而,生物大脑中还有一个基本方向人工神经网络尚未充分利用:信息的时序编码。保留时序信息有助于更好地表示动态特征,例如声音,并能够对随时可能发生的事件作出快速反应。此外,尽管生物系统可以由数十亿个神经元所组成,但信息可以由单个神经元所发射的单个信号(“脉冲”)携带,(单个细胞)带有被编码至时序信号中的信息。

  • 视频游戏
    https://ai.googleblog.com/2019/06/introducing-google-research-football.html

  • 视频细粒度理解
    https://ai.googleblog.com/2019/08/video-understanding-using-temporal.html


基于这一生物学见解,Ihmehimmeli 项目运用不同的架构和学习环境来探索人工脉冲神经网络 (Spiking neural network) 可以如何利用时序动态。“Ihmehimmeli”是芬兰语中带有玩笑含义的一个词,指的是让人很难搞懂用途或用法的复杂工具或机械。这个词能够很好地体现我们的目标,即,使用含时序编码的信息构造复杂递归神经网络架构。我们使用含时序编码方案的人工脉冲网络。在此网络中,吸引人注意的信息(例如较大的声音或明亮的颜色)会更早地产生神经元脉冲。在信息处理层次结构中,最先出现脉冲的神经元获胜。这样的编码可以自然地实现一种分类方案:输入特征被自然地编码在相应输入神经元的脉冲时序内,而输出则由最早出现脉冲的输出神经元进行编码。

  • 人工脉冲神经网络
    https://en.wikipedia.org/wiki/Spiking_neural_network

手捧 Himmeli 的 Ihmehimmeli 项目团队,这个符号代表他们的目标是打造含信息时序编码的递归神经网络架构


我们最近发布公开了一个模型的源代码,在这个模型中,我们展示了使用时序编码的全连接脉冲网络的计算能力。我们的模型所使用的突触传递函数 (synaptic transfer function) 借鉴自一种生物模型。即,作为对传入信号的反应,神经元细胞膜上的电势会急剧上升并在随后减弱,随之出现神经脉冲(也被称为“神经冲动”)。

  • Himmeli
    https://finland.fi/christmas/the-original-finnish-christmas-ornament/

  • 模型开源
    https://github.com/google/ihmehimmeli


神经元细胞膜上的电势急剧上升随后下降 来源:维基百科


关联信号变化的强度由代表突触效率的连接 权重 控制。关键在于,这个公式可以精确获得突触后脉冲时间关于突触前脉冲时间和权重的导数。训练该网络的过程包括调整神经元之间的权重,进而调整整个网络中的脉冲时间。就像传统的人工神经网络一样,通过反向传播来实现。我们采用同步脉冲,其时序也是通过反向传播来学习,以便为网络提供时序参考。


我们把特征编码到时序之后对该模型进行基于传统基准的训练。结果表明,脉冲网络已成功学会解决 噪声布尔逻辑问题 (noisy Boolean logic problems),并在 MNIST 上实现 97.96% 的准确度,这一结果可与相同架构的传统全连接网络相媲美。然而,有别于传统网络,我们的脉冲网络所用的编码在生物学上更为合理,能够更高效计算,且准确度仅有小幅下降。这点将在下文详述。

  • MNIST
    http://yann.lecun.com/exdb/mnist/


在 MNIST 上训练脉冲网络时,我们观察到神经网络在两种工作状态之间自发地切换。在训练早期,该网络表现出一种缓慢而高度准确的状态,在神经网络做出决策时,几乎所有神经元都触发过。而到了训练后期,该网络自发地切换到高速但准确度略有降低的状态。这种行为十分有趣,因为我们并没有特意地进行如此优化。因此,某种意义上可以认为脉冲网络既可以“深思熟虑”,也可以“当机立断”。正如人类在决策速度与准确度之间的权衡。

上方:对 MNIST 数字进行分类的低速网络(“深思熟虑型”)

下方:对同一个数字进行分类的快速网络(“当机立断型”)

这些图显示各层中各个神经元的脉冲时间光栅图,其中,同步脉冲显示为橙色。在本例中,两个网络都可以正确地将该数字分类;总体而言,“低速”网络比“高速”网络有更好的准确度。


我们还可以重建脉冲神经网络已习得的数字。方法是输入空白图像并逐渐调整,使得目标输出神经元的响应最大化。这表明,该网络像人类一样习得数字的抽象表示,而不是机械地学习可能的像素组合。模型的可解释性非常重要,既体现在理解网络的实际学习情况,也体现在避免输入的微小扰动导致结果大幅波动。

网络如何“想象”数字 0、1、3 和 7


这项研究仅是 Ihmehimmeli 项目初步探索中的一个小示例。Ihmehimmeli 项目仍继续从生物学获取灵感并探索基于时序的计算潜力。在其他正在进行的实验中,我们训练含时序编码的脉冲神经网络,以控制虚拟环境中人造昆虫的行进路线,或者从神经系统的发展中获得灵感来训练二维脉冲网格,以利用轴突生长来预测单词。我们的目标是增加我们对自然智能进化机制的了解,以便探索具有不同内部状态和状态转移的基于时序的人工神经网络。



致谢

本文所述的作品由 Iulia Comsa、Krzysztof Potempa、Luca Versari、Thomas Fischbacher、Andrea Gesmundo 和 Jyrki Alakuijala 创作。我们非常感谢 Google 的同事们对这项工作的所有探讨和反馈。



如果您想详细了解 本文提及 的相关内容,请参阅以下文档。这些文档深入探讨了这篇文章中提及的许多主题:

  • 论文
    (https://arxiv.org/abs/1907.13223)

  • Ihmehimmeli 项目的 GitHub
    (https://github.com/google/ihmehimmeli)



更多 AI 相关阅读:



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存